package store.lunangangster.bpmn.converter.parser;

import javax.xml.stream.XMLStreamReader;
import store.lunangangster.bpmn.model.BaseElement;
import store.lunangangster.bpmn.model.BpmnModel;

/**
 * 一些基础元素的子元素抽象解析器
 *
 * @author cwk
 * @version 1.0
 */
public abstract class BaseChildElementParser extends AbstractBpmnElementParser {

  /**
   * 从xml输入流中解析出父元素中存在的子元素，根据不同的实现方式解析不同的子元素
   * @param xsr             xml文件输入流
   * @param parentElement   父元素
   * @param model           BpmnModel对象
   * @throws Exception      解析异常
   */
  public abstract void parseChild(XMLStreamReader xsr, BaseElement parentElement, BpmnModel model) throws Exception;


}
